#ifndef EDITVIEWPARAMTAG_H_RQRLNRJKKQQVVNC
#define EDITVIEWPARAMTAG_H_RQRLNRJKKQQVVNC

#include "../../../kegui_global.h"


#include <geos.h>

namespace kepen {
namespace core {

class EditWidget;

class KEGUI_EXPORT EditViewParamTag
{
public:
    EditViewParamTag(EditWidget * ew);
    EditViewParamTag &operator=(EditViewParamTag &&other) noexcept = default;
    EditViewParamTag &operator=(const EditViewParamTag &) noexcept = default;
    EditViewParamTag(EditViewParamTag &&other) noexcept = default;
    EditViewParamTag(const EditViewParamTag &other) noexcept = default;

    virtual ~EditViewParamTag()noexcept = default;
public:
    void resetState();
    void setActGeomEdit(int val);
    void setActGeomNew(int val);
    bool isEnPickPartMode()const;
    bool isCheckedBy(int id)const;
    bool enableBy(int id)const;
    bool  enableDoSave() const;
    bool isNotEmptyGeom() const;

    void clearPickMode();

    int getComboBoxDisplay(int id)const;
    int setTarget4Pick(int val);
    int setDrawMode4Pick(int val);
    void setIdentify4Load(int val);
public:


    bool m_isEnableAffinePart;
    bool m_IsOptMakeHole;

    bool m_enSave;
    int ActDrawMode4Pick,VertexOrEdgeTarget4Pick;
    int ActNewDraw,ActGeomEdit;
    int IdentifyDraw4Load;
    int nVertexOrEdgePick_last;
    int nDrawMode4Pick_last;
    int nIdentify4Load_last;
    std::size_t m_HashGeom , m_HashGeom_run;
    EditWidget * editWdg;


};

}
}
#endif // EDITVIEWPARAMTAG_H
